ChatGPT를 업무에 사용하다 보면 자연스럽게 한 단계 더 나아가게 되는 순간이 있습니다.
저도 처음에는 ChatGPT를 주로 문서 작성이나 업무 아이디어를 정리하는 데 사용했습니다.
그러다가 개발 관련 업무를 접하면서 간단한 코드에 대해서도 AI에게 질문하기 시작했습니다.
오류 메시지를 넣어서 원인을 물어보기도 하고,
"이 기능을 추가하려면 어떻게 해야 해?"
라고 질문하면서 코드를 이해하는 데 도움을 받기도 했습니다.
그런데 프로젝트의 코드가 많아질수록 한 가지 불편한 점이 생겼습니다.
ChatGPT가 코드를 만들어줘도 결국 제가 해야 하는 일이 남아 있었습니다.
"이 코드를 어느 파일에 넣어야 하지?"
"기존에 이 기능을 처리하는 코드는 어디에 있지?"
"여기만 수정하면 되는 걸까?"
특히 개발자가 아닌 입장에서는 코드를 작성하는 것보다 기존 프로젝트의 구조를 이해하고 수정해야 할 위치를 찾는 것이 더 어렵게 느껴졌습니다.
그러다가 관심을 가지게 된 것이 OpenAI Codex입니다.
이번 글에서는 비개발자인 제가 Codex를 처음 접하면서 어떤 업무부터 시켜보려고 했는지, 그리고 ChatGPT에서 코드를 질문하는 것과 어떤 차이가 있었는지를 정리해보겠습니다.
OpenAI Codex란?
처음에는 저도 Codex가 단순히 코드를 더 잘 만들어주는 ChatGPT 같은 것이라고 생각했습니다.
하지만 사용 방법을 살펴보니 조금 달랐습니다.
OpenAI는 Codex를 코드를 작성하고 검토하고 실제 개발 작업을 수행할 수 있도록 도와주는 AI Coding Agent로 설명하고 있습니다.
단순히 코드 한 부분에 대해 답변하는 것뿐 아니라 프로젝트의 코드를 살펴보고, 필요한 파일을 찾아 수정하고, 명령을 실행하는 등의 작업까지 연결할 수 있습니다.
그래서 제가 이해한 가장 간단한 차이는 이렇습니다.
ChatGPT에게 코딩을 질문하는 것
"이 기능을 구현하는 코드를 만들어줘."
Codex에게 개발 작업을 요청하는 것
"이 프로젝트를 확인해서 이 기능이 어디에서 처리되는지 찾고, 필요한 부분을 수정해줘."
즉, 코드를 하나씩 질문하는 것에서 프로젝트 단위로 AI와 함께 작업하는 방식으로 바뀌는 느낌이었습니다.
처음 Codex에게 시켜본 업무
처음부터 새로운 프로그램 전체를 만들어달라고 하지는 않았습니다.
개발자가 아닌 제가 기존 프로젝트에서 가장 어려워했던 것부터 시작하는 것이 좋다고 생각했습니다.
바로,
"이 프로젝트가 어떻게 구성되어 있는지 설명해줘."
였습니다.
개발자라면 프로젝트 폴더와 파일 이름을 보고 어느 정도 구조를 파악할 수 있겠지만, 저처럼 개발을 전문적으로 하지 않는 사람에게는 폴더를 열었을 때부터 막막할 때가 있습니다.
파일은 수십 개 또는 수백 개가 있고,
어떤 파일이 화면을 담당하는지,
어떤 파일이 데이터를 처리하는지,
어디에서 기능이 시작되는지
쉽게 알기 어렵습니다.
그래서 코드를 바로 수정해달라고 하기 전에 프로젝트 구조부터 파악하는 방식으로 접근했습니다.
OpenAI의 Codex 활용 사례에서도 큰 코드베이스를 이해하고 요청 흐름을 추적하거나 관련 모듈과 파일을 찾는 작업을 하나의 활용 방법으로 소개하고 있습니다.
첫 번째 요청: "이 프로젝트 구조를 설명해줘"
Codex를 처음 사용할 때는 복잡한 프롬프트를 작성할 필요가 없었습니다.
예를 들면 이런 식입니다.
이 프로젝트의 전체 구조를 분석해줘.
주요 폴더가 어떤 역할을 하는지 설명하고,
화면과 관련된 파일, 데이터 처리와 관련된 파일, 주요 기능이 들어 있는 파일을 구분해서 알려줘.나는 개발자가 아니기 때문에 최대한 쉽게 설명해줘.
여기에서 마지막 문장을 넣는 것이 개인적으로 중요했습니다.
"나는 개발자가 아니기 때문에 쉽게 설명해줘."
개발 용어를 그대로 사용하면 AI가 설명을 해줘도 다시 그 용어를 검색해야 하는 경우가 있기 때문입니다.
그래서 처음에는 코드를 만드는 것보다 코드를 이해하는 도구로 Codex를 활용하는 방식이 부담이 적었습니다.
두 번째 요청: "이 기능이 어느 파일에 있는지 찾아줘"
프로젝트 구조를 어느 정도 파악했다면 다음으로 궁금한 것은 실제 기능의 위치였습니다.
예를 들어 기존 시스템에 Excel Download 버튼이 있다고 가정해보겠습니다.
예전 같으면 프로젝트 안에서 Excel, Download, Export 같은 단어를 검색하면서 관련 코드를 찾아야 합니다.
그런데 정확한 함수명이나 구조를 모르면 이것도 쉽지 않습니다.
이럴 때 Codex에는 좀 더 자연스럽게 요청할 수 있습니다.
현재 프로젝트에서 Excel Download 기능이 구현되어 있는 부분을 찾아줘.
어떤 파일에서 처리되고 있는지 알려주고,
해당 기능이 어떤 순서로 실행되는지 개발자가 아닌 사람도 이해할 수 있게 설명해줘.아직 코드는 수정하지 말아줘.
마지막의
"아직 코드는 수정하지 말아줘."
도 처음 사용할 때는 유용한 조건이라고 생각합니다.
AI가 바로 코드를 변경하게 하기보다 먼저 어디를 왜 수정해야 하는지 확인한 뒤 작업하는 방식이 안전하기 때문입니다.
세 번째 요청: "이 기능을 추가하려면 어디를 수정해야 해?"
기존 기능의 위치를 찾았다면 그다음부터 실제 바이브코딩에 가까워집니다.
예를 들어,
현재 화면에 Excel Download 버튼을 하나 추가하고 싶어.
기존 프로젝트 구조를 최대한 유지하면서 구현하려면 어떤 파일을 수정해야 하는지 먼저 알려줘.
수정이 필요한 파일과 변경 내용을 설명한 뒤 코드를 작성해줘.
이런 식입니다.
여기서 제가 중요하다고 생각하는 부분은 바로
"기존 프로젝트 구조를 최대한 유지해줘."
입니다.
AI에게 단순히
"Excel Download 기능 만들어줘."
라고 요청하면 기능 자체를 만드는 데 집중할 수 있습니다.
하지만 실제 회사 시스템에서는 새로운 기능 하나 때문에 기존 기능이 영향을 받으면 안 됩니다.
그래서 기존 코드를 먼저 파악하고 필요한 부분만 수정하도록 요청하는 것이 중요합니다.
Codex를 사용하면서 프롬프트가 달라졌다
ChatGPT에 코딩을 질문할 때는 주로 이런 식으로 질문하게 됩니다.
Python으로 Excel 파일을 합치는 코드를 만들어줘.
이 질문은 필요한 코드를 얻는 것이 목적입니다.
반면 Codex에서는 질문의 방식이 조금 달라집니다.
현재 프로젝트를 확인해서 Excel 파일을 생성하는 기존 기능이 있는지 먼저 찾아줘.
있다면 기존 방식을 최대한 재사용해서 현재 화면에도 Excel Download 기능을 추가할 수 있는지 검토해줘.
수정이 필요한 파일을 먼저 알려주고 작업을 진행해줘.
즉,
코드를 만들어달라는 요청 → 프로젝트를 이해하고 작업해달라는 요청
으로 바뀌었습니다.
저는 이것이 일반적인 AI 코딩과 AI Coding Agent를 사용하는 방식의 큰 차이 중 하나라고 느꼈습니다.
오류가 발생했을 때도 Codex를 활용할 수 있다
바이브코딩을 하다 보면 코드를 만드는 것보다 오류를 해결하는 데 더 많은 시간이 들어갈 때가 있습니다.
저처럼 개발자가 아니라면 오류 메시지가 나왔을 때 어디서부터 확인해야 할지 막막할 수 있습니다.
이럴 때도 단순히
이 오류 고쳐줘.
라고 하기보다는 조금 더 구체적으로 요청하는 것이 좋았습니다.
예를 들어,
현재 발생한 오류의 원인을 먼저 분석해줘.
관련된 파일을 찾아서 어떤 코드 때문에 발생하는지 설명해줘.
기존 기능에 영향을 최소화하는 방법으로 수정해줘.
수정 후 어떤 부분이 변경되었는지도 알려줘.
이렇게 요청하면 단순히 수정된 코드를 받는 것보다 왜 문제가 발생했는지 같이 이해하는 데 도움이 됩니다.
한 번에 큰 기능을 요청하지 않는 것이 좋았다
AI를 사용하다 보면 욕심이 생깁니다.
처음부터,
Invoice 관리 시스템을 만들어줘.
처럼 큰 기능을 요청하고 싶어집니다.
하지만 저는 기능을 작은 단계로 나눠서 접근하는 것이 더 이해하기 쉽다고 생각합니다.
예를 들어 Invoice 관리 기능이라면,
1단계: 현재 프로젝트 구조 분석
2단계: Invoice 관련 기존 기능 검색
3단계: 필요한 화면 구성 검토
4단계: 데이터 입력 기능 구현
5단계: 저장 기능 연결
6단계: Excel Download 추가
7단계: 오류 확인 및 테스트
이런 식으로 나누는 것입니다.
하나씩 진행하면 문제가 생겼을 때 어느 단계에서 잘못됐는지 확인하기도 쉽습니다.
Codex가 수정했다고 바로 끝내지는 않는다
Codex가 코드를 수정해줬다고 해서 작업이 끝난 것은 아닙니다.
오히려 그다음 단계가 중요합니다.
무엇을 수정했는지 확인하고 실제로 원하는 기능이 동작하는지 테스트해야 합니다.
저는 특히 기존 시스템을 수정하는 경우에는 AI에게 다음과 같이 다시 요청하는 방식이 유용하다고 생각합니다.
방금 수정한 내용을 다시 검토해줘.
변경된 파일을 정리하고,
기존 기능에 영향을 줄 가능성이 있는 부분이 있는지 확인해줘.테스트해야 할 항목도 정리해줘.
이렇게 하면 단순히 코드 생성 → 완료가 아니라,
요구사항 → 코드 분석 → 수정 → 검토 → 테스트
형태로 접근할 수 있습니다.
OpenAI 역시 Codex를 기능 개발뿐 아니라 코드 리뷰, 테스트, 리팩터링 등 실제 소프트웨어 개발 과정의 여러 단계에 활용할 수 있는 도구로 소개하고 있습니다.
비개발자인 나에게 가장 유용했던 부분
처음 Codex를 접했을 때 저는 AI가 얼마나 복잡한 코드를 만들 수 있는지가 가장 궁금했습니다.
그런데 사용 방법을 알아갈수록 오히려 다른 부분이 더 중요하다고 느꼈습니다.
바로 기존 코드를 이해하는 것입니다.
개발자가 아닌 사람에게 어려운 것은 코드 한 줄을 작성하는 것만이 아닙니다.
어떤 파일을 봐야 하는지,
어디에서 데이터가 넘어오는지,
이 버튼을 누르면 어떤 코드가 실행되는지,
이 코드를 수정하면 다른 기능에 영향을 주는지
파악하는 것이 더 어렵습니다.
그래서 처음부터 Codex에게 프로그램 전체를 만들어달라고 하기보다,
"이 코드가 무엇을 하는지 설명해줘."
"이 기능이 어디에 있는지 찾아줘."
"어디를 수정해야 하는지 알려줘."
부터 시작하는 것이 비개발자에게는 더 현실적인 Codex 사용법이라고 생각합니다.
ChatGPT와 Codex, 둘 다 필요한 이유
Codex를 사용한다고 해서 ChatGPT를 사용하지 않게 되는 것은 아니었습니다.
오히려 역할을 나눠서 생각하면 편합니다.
저는 업무 아이디어를 정리하거나 요구사항을 구체화할 때는 대화형 AI가 편하다고 생각합니다.
예를 들어,
"Invoice 관리 화면에는 어떤 항목이 있어야 할까?"
"사용자가 헷갈리지 않도록 승인 프로세스를 어떻게 만들까?"
처럼 아직 구현 방법이 정해지지 않은 단계입니다.
그리고 요구사항이 어느 정도 정리된 뒤 실제 프로젝트를 분석하고 코드를 수정해야 할 때 Codex 같은 Coding Agent를 활용할 수 있습니다.
결국 제가 생각하는 흐름은 이렇습니다.
업무 아이디어
↓
요구사항 정리
↓
Codex로 프로젝트 분석
↓
수정할 코드와 파일 확인
↓
기능 구현
↓
테스트
↓
오류 수정
이 과정이 바로 제가 생각하는 실무형 바이브코딩에 가깝습니다.
Codex를 처음 사용한다면 이렇게 시작해보세요
처음부터 어려운 프로그램을 만들 필요는 없습니다.
오히려 이미 가지고 있는 작은 프로젝트에서 시작해보는 것이 좋습니다.
Codex에게 먼저,
"이 프로젝트 구조를 개발자가 아닌 사람도 이해할 수 있도록 설명해줘."
라고 요청해보세요.
그다음에는,
"이 프로젝트에서 ○○ 기능을 담당하는 코드를 찾아줘."
라고 요청합니다.
그리고 마지막으로,
"기존 기능에 영향을 최소화하면서 ○○ 기능을 추가하려면 어디를 수정해야 하는지 알려줘."
라고 요청해보는 것입니다.
이 세 단계만 해봐도 단순히 ChatGPT에서 코드를 받아 복사하는 방식과는 차이가 있다는 것을 이해하기 쉽습니다.
마무리: 처음부터 코드를 만들어달라고 하지 않았다
Codex를 처음 접하면
"AI가 프로그램을 어디까지 만들어줄 수 있을까?"
라는 생각부터 하기 쉽습니다.
저도 처음에는 코드 생성 기능이 가장 궁금했습니다.
하지만 실제 업무에서 더 필요했던 것은 기존 프로젝트를 이해하는 일이었습니다.
그래서 제가 추천하는 첫 번째 Codex 활용 방법은 복잡한 프로그램을 만들어달라고 하는 것이 아닙니다.
"이 프로젝트를 분석해서 나에게 설명해줘."
여기서 시작하는 것입니다.
그다음 기존 기능을 찾고,
수정할 위치를 확인하고,
작은 기능 하나를 변경해보고,
결과를 테스트합니다.
이 과정을 반복하다 보면 개발자가 아니더라도 프로젝트가 어떤 구조로 움직이는지 조금씩 이해할 수 있습니다.
제가 바이브코딩을 하면서 느끼는 가장 큰 변화도 여기에 있습니다.
예전에는 개발하려면 먼저 코딩을 배워야 한다고 생각했다면, 지금은 내가 원하는 업무 기능을 명확하게 설명하고 AI와 함께 하나씩 구현해보는 방법도 가능해졌습니다.
물론 AI가 만든 코드를 무조건 믿어서는 안 됩니다.
하지만 작은 기능부터 검토하고 테스트하면서 사용한다면 Codex는 비개발자가 개발 프로젝트를 이해하고 바이브코딩을 시작하는 데 꽤 유용한 도구가 될 수 있다고 생각합니다
.jpg)
0 Comments